import logging
import os
from logging.handlers import RotatingFileHandler


def record_log(message, level="info"):
    # 日志文件的路径
    filepath = '/home/xc/zy/sales_top3_project/top3_sales_processing/log/record_log.txt'

    # 创建日志目录（如果不存在）
    log_dir = os.path.dirname(filepath)
    if not os.path.exists(log_dir):
        os.makedirs(log_dir)

    # 创建或配置日志记录器
    logger = logging.getLogger('RecordLogger')
    logger.setLevel(logging.DEBUG)  # 设置日志记录器的最低级别为DEBUG

    # 处理器（文件处理器，文件不存在会自动创建）
    if not logger.hasHandlers():
        handler = RotatingFileHandler(filepath, maxBytes=1000000, backupCount=3)
        formatter = logging.Formatter('%(asctime)s - %(levelname)s - %(message)s')
        handler.setFormatter(formatter)
        logger.addHandler(handler)

    # 根据传入的级别记录日志
    if level == "debug":
        logger.debug(message)
    elif level == "info":
        logger.info(message)
    elif level == "warning":
        logger.warning(message)
    elif level == "error":
        logger.error(message)
    elif level == "critical":
        logger.critical(message)
    else:
        logger.info(message)  # 默认记录为info级别

